package com.gljx.web.service;

import com.gljx.web.Entity.SubjectTwoReg;
import com.gljx.web.Entity.User;

import java.util.List;
import java.util.Map;

public interface SubjectTwoRegService {
	Map<String, Object> selectPageCount(String psql);

    Map<String, Object> selectPage(int pindex, String psql, int psize);
    /**
	 * 查找最大编码
	 * @return
	 */
	String selectFnumber(String companyId);
	/**
	 * 增加科目二考试登记信息
	 * @param subjectTwoReg
	 * @return
	 */
	int addSubjectTwoReg(SubjectTwoReg subjectTwoReg);
	/**
	 * 根据fid删除
	 * @param fid
	 * @return
	 */
	int deleteByPrimaryKey(String fid);
	/**
	 * 根据fid查找科目二考试登记信息
	 * @param fid
	 * @return
	 */
	SubjectTwoReg selSubjectTwoRegByFid(String fid);
	
	/**
	 * 修改科目二考试登记信息
	 * @param subjectTwoReg
	 * @return
	 */
	int updateSubjectTwoReg(User user,SubjectTwoReg subjectTwoReg,String [] subfid,String [] subfseq,String [] subcfzkzmbh,String [] subfnameL2,String [] substufnumber,String [] subfnumber,
			String [] subcfidcardno,String [] subcfsex,String [] subcfsjhm,String [] subcflxdh,String [] subcftjrName,String [] cfsqzjcxdh,String [] subcfjiaolianid,String [] subjlname,String [] subcfchexing
			,String [] subcflocal,String [] subcfkscs,String [] subcfckbk,String [] subcfbxwx,String [] subcfkmyjgsj,String [] subcfbjgsj,String [] subcfscts,String [] subcfclazz,String [] subcfysje,
			String [] subcfyhje,String [] subcfyisje,String [] subcfqfje,String [] subcfremark);
	/**
	 * 审核科目二考试登记信息
	 * @param subjectTwoReg
	 * @return
	 */
	int updateSubjectTwoReg(SubjectTwoReg subjectTwoReg);
	
	/**
	 * 根据业务日期查找科目二考试登记信息的单据
	 * @param fbizdate
	 * @param cfcartype
	 * @return
	 */
	List<SubjectTwoReg> selSubjectTwoRegByfbizdate(String companyid,String fbizdate,String cfcartype);
	
	/**
	 * 统计查询科目二 报考人数 按日期
	 * @param companyId
	 * @param beginTime
	 * @param endTime
	 * @return
	 */
	List<SubjectTwoReg> selSubjectTwoSumEnterPersons( String companyId,String beginTime,String endTime);
	
	/**
	 * 统计查询科目二  考试合格 不合格 缺考 人数  按日期
	 * @param companyId
	 * @param beginTime
	 * @param endTime
	 * @return
	 */
	List<SubjectTwoReg> selSubjectTwoResultPassExamRate( String companyId,String beginTime,String endTime);
	/**
	 * 统计查询科目二 报考人数 按月份
	 * @param companyId
	 * @param beginTime
	 * @param endTime
	 * @return
	 */
	List<SubjectTwoReg> selSubjectTwoSumEnterPersonsByMonth( String companyId,String beginTime,String endTime);
	
	/**
	 * 统计查询科目二  考试合格 不合格 缺考 人数  按月份
	 * @param companyId
	 * @param beginTime
	 * @param endTime
	 * @return
	 */
	List<SubjectTwoReg> selSubjectTwoResultPassExamRateByMonth( String companyId,String beginTime,String endTime);

	/**
	 * 查找审核单据对应的经办人
	 * @param fnumber
	 * @return
	 */
	String selectAuditPerson(User user,Object fnumber);

	/**
	 * 查看科目二考试登记 导出Excel
	 * @param companyId
	 * @param fnumber
	 * @param fdescription
	 * @param beginTime
	 * @param endTime
	 * @return
	 */
	List<SubjectTwoReg> selectSubjectTwoReg(String companyId,String fnumber,String fdescription,String beginTime,String endTime);
}
